查看原文
其他

【教程】看看大神的思路!机器学习界网红7分钟教你如何搭建Chatbot?(中文版)

2017-04-28 晋阳 AI研习社

Siraj Raval 作为深度学习领域的自媒体人在欧美可以说是无人不知、无人不晓。


凭借在 Youtube 上的指导视频,Siraj Raval  在全世界吸粉无数,堪称是机器学习界的网红。说他是全球范围内影响力最大的 ML 自媒体人,怕也无异议。


因此,雷锋网 AI 研习社联系到了Siraj 本人,并获得授权将他最精华的 Youtube 视频进行字幕汉化,免费推送给大家。我们将不定期更新,敬请关注!


今天 Siraj 就带领大家做一个自己的 Chatbot(文末有GitHub链接)


https://v.qq.com/txp/iframe/player.html?vid=a03972f7lds&width=500&height=375&auto=0

(建议在Wi-Fi环境下观看视频,土豪随意~)


为了方便流量不足的小伙伴们在路上看,我们特意整理出了文字版和动图~


微信、Skype、Messager以及其他主流通信软件如今都已经搭建了聊天机器人,许多科技巨头纷纷推出各自的聊天助手,各大电商也越来越多地使用聊天机器人参与客服工作。



不过Chatbot可以为你做些什么实实在在的事情呢?你可以和CNN机器人聊天来获取实时新闻,也可以让机器人订花送给女票... ...等等,没有女票?没关系,说出你的要求,让婚恋机器人给你介绍。

看来学会搭建一个Chatbot还是很有必要的。Siraj会带你用TensorFlow建一个聊天机器人,使用递归神经网络算法(RNN),步骤是下载数据集,创建模型,训练模型,聊天测试。



  Step1 下载数据集

这里会用到来自康奈尔大学的电影对话数据集。包含了超过600部的好莱坞电影的对话。(恩,可以和女票秀一下深厚的台词功力了。)首先要下载数据集到数据文档中,然后将其切分为两个不同的训练数据集(分别为问和答)进行预处理。



  Step2 创建模型

这里用到的模型是 seq2seq,它包含两个 LSTM 递归神经网络,第一个是 encoder 负责处理 input,第二个是 decoder 负责生成 output。使用encoder和decoder作为输入参数,把词汇转为向量形式。



  Step3  训练模型

这是很小的数据集,完成整个训练可能也就几个小时。



  Step4  聊天测试

随着训练进行,回答会越来越有逻辑。你投入的数据越多,聊得会越开心。



完整代码和数据集请参考Github链接(点击文末阅读原文进入)。

---------------------------------------------

Siraj Raval 何许人也?

Siraj Raval是YouTube极客网红,曾任职于Twilio和Meetup,客户包括Elon Mask和Google,教大家如何使用机器学习开发聊天机器人、无人驾驶车、AI艺术家等视频点击量累计数百万。


Siraj Raval 为什么这么火?

首先,当然是这位哥伦比亚大学高材生活儿好技术好,用自己特有的方式三言两语就能抛出一个原本晦涩的 ML、DL 概念,让听众细细咀嚼。再者,这家伙幽默逗比、口才便给。兴之所至常手舞足蹈,瞳仁奇光掩映,口吐智慧莲华。深度学习讲师不少,但这么风趣可亲的却不多。

---------------------------------------------

关注 AI 研习社后,回复【1】获取

【千 G 大数据 / NN / AI 数据、教程、论文!】

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存